package com.itheima.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
@AllArgsConstructor

@TableName("user")//此注解指定当前类的数据表明。如果省略此注表明当前类对应表的名字石雷鸣首字母小写
public class User {

//     Mybatis支持的主键生成策略
//     AUTO  数据库ID自增
//     INPUT 用户输入ID
//     ASSIGN_ID 雪花算法生成ID(默认值)
//     ASSIGN_UUID UUID算法生成ID

    @TableField("id")
    @TableId(type = IdType.NONE)//用于标识主键字段, type用于指定主键生成策略
    private Long id;

    @TableField("name")
    //注解用于指定当前属性对应数据表中哪个字段; 如果省略此注解表明当前属性对用数据表中的同名字段
    private String name;

    @TableField(select = false)//标识不想将数据表中某个对应字段查询回来
    private String password;

    @TableField(exist = false)//标识当前属性在数据表中没有对应的字段
    private String password2;

    private Integer age;
    private String tel;

    //逻辑删除字段，标记当前记录是否被删除
    //@TableLogi标注在属性上，表示此字段用于逻辑删除的标识
    private Integer delete;
}
